import os
import collections

def getAllDirQU(path):
    queue = collections.deque()
    queue.append(path)
    while len(queue) != 0:
        dirPath = queue.popleft()
        # 找出所有的文件
        fileList = os.listdir(dirPath)
        for fileName in fileList:
            # 绝对路径
            fileAbsPath = os.path.join(dirPath, fileName)
            # 判断是否是目录，是目录就进队，不是就打印
            if os.path.isdir(fileAbsPath):
                # print("目录：", fileName)
                queue.append(fileAbsPath)
            else:
                # print("普通文件：", fileName)
                if fileName == 'hosts':
                    # print('这是hosts文件')
                    print('温馨提示：添加信息请输入insert，退出请输入exit!')
                    Tips = input('请输入你要执行什么操作：')
                    if Tips == 'insert':
                        while True:
                            info = input('请输入你要添加的信息：')
                            if info != 'exit':
                                with open(fileAbsPath, 'a') as f:
                                    f.write(info + '\n')
                            else:
                                print('祝您工作顺利！')
                                break
                    elif Tips == 'exit':
                        print('祝您工作顺利！')

getAllDirQU(r"F:\windows\system32\derivers\etc") # 测试使用
# getAllDirQU(r"C:\Windows\System32\drivers\etc")